package com.ct.book.mapper;

import com.ct.book.model.BookInfo;
import com.ct.book.model.PageRequest;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface BookInfoMapper {
    @Insert("insert into book_info(book_name, author, count, price, publish, status)" +
            " values (#{bookName}, #{author}, #{count}, #{price}, #{publish}, #{status})")
     Integer insertBook(BookInfo bookInfo);

    @Select("select count(*) from book_info")
    Integer count();

    @Select("select * from book_info where status != 0 order by id asc limit #{offset}, #{pageSize}")
    List<BookInfo> queryBookListByPage(PageRequest pageRequset);

    @Select("select * from book_info where id = #{bookId} and status != 0")
    BookInfo queryBookById(Integer bookId);

    Integer updateBook(BookInfo bookInfo);

    Integer batchDeleteById(List<Integer> ids);
}
